package com.kuang.tvolatile;

import java.util.concurrent.TimeUnit;

/**
 * Author: Zhang Dongwei
 * Date: 2022/3/16 15:53
 */
public class JMMDemo {
    // 不加volatile程序会死循环！
    // 加volatile可以保证可见性
    private volatile static int num = 0;
    public static void main(String[] args) { // main线程

        new Thread(()->{ // 线程1 对主内存的变化是不知道的
            while (num == 0){

            }
        }).start();
        try {
            TimeUnit.SECONDS.sleep(1);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        num = 1;
        System.out.println(num);
    }
}
